package Interfaz;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

import com.toedter.calendar.JCalendar;


import models.Empleados;


public class CalendarioWindow extends JDialog{

	
	private static final long serialVersionUID = 12L;
	
	//generamos los paneles y los dejemos sin inicializar
	
	JPanel panel;

	JCalendar cal;

	protected Date fechaSeleccionada;

	

	
	
	public Date getFechaSeleccionada() {
		return fechaSeleccionada;
	}

	/**
	 * metodo constructor desde el que se cargan todas las cosas de la clase reservas
	 * 
	 * @param empleado2 recibe como parameto un empleado (el cual ha hecho log in en el programa)
	 */
	/**
	 * @param empleado2
	 */
	private CalendarioWindow(JFrame frame,boolean modal){
		super(frame,true);
		
		initJFrameComponetsAlmacen();
	}


	public static Date showCalendarioDialog(JFrame frame){
		
		CalendarioWindow cw = new CalendarioWindow(frame,true);
		
		cw.setVisible(true);
		//System.out.println("date:"+cw.getFechaSeleccionada());
	
		return cw.getFechaSeleccionada();
	}
	
	
	/**
	 * metodo que inicializa los componentes creados anteriormente
	 */
	public void initJFrameComponetsAlmacen(){
		//instanciar declaraciones
		
		panel = new JPanel();
		

		cal=new  JCalendar();
		cal.addPropertyChangeListener(new PropertyChangeListener() {
			
			public void propertyChange(PropertyChangeEvent evt) {
				if(evt.getPropertyName().equals("calendar")){
					Calendar calendario=cal.getCalendar();
					CalendarioWindow.this.fechaSeleccionada=calendario.getTime();
					//System.out.println("fecha 1:"+fechaSeleccionada);
					dispose();
				}
				
			}
		});
		
		this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
		this.setBounds(((d.width/2)-400), ((d.height/2)-300), 800, 600);
		panel.setBackground(Color.WHITE);
		this.add(panel);
		this.setBackground(Color.WHITE);
		calendario();
		this.setResizable(false);
		
	}
	public void calendario(){
	      this.add(cal);
	      this.setSize(240, 220);
	      this.setLayout(new FlowLayout());
	      setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
	}
	

	
	
}
